package com.example.mq.send;

import com.weixin.common.core.constant.RabbitConstants;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.stereotype.Component;

/**
 * 消息发送者
 *
 * @author rosszhang
 */
@Slf4j
@Component
public class AmqpSender {

    private AmqpTemplate rabbitAmqpTemplate;

    public AmqpSender(AmqpTemplate rabbitAmqpTemplate) {
        this.rabbitAmqpTemplate = rabbitAmqpTemplate;
    }

    /**
     * 发送消息的方法
     *
     * @param msg 发送的消息
     */
    public void send(String msg) {
        log.info("向队列：{}，发送了一条消息：{}", RabbitConstants.QUEUE_NAME, msg);
        //向消息队列发送消息
        //参数一：队列的名称。
        //参数二：消息
        this.rabbitAmqpTemplate.convertAndSend(RabbitConstants.QUEUE_NAME, msg);
    }
}